package XMFramework.Interface
{
	public interface IModule
	{
		/**
		 * SNS framework broadcasting channel to communicate with another module 
		 * @param target Array list name of module expect receive event
		 * @param param Parameter
		 * 
		 */		
		function onBroadcasting( target : Array, channelId : String, ...param ) : void;
		
		/**
		 * Call at the end of framwork start on. Call to register new module here
		 * See  IFramework.registerArchitechture()
		 * @param frameworkPtr Pointer to main SNS framework core object
		 * 
		 */		
		function onFrameworkStart() : void;
		
		/**
		 * 
		 * @param value
		 * 
		 */		
		function set frameworkPtr( value : IFramework ) : void

		/**
		 * 
		 * @param value
		 * 
		 */		
		function get frameworkPtr() : IFramework;
	}
}